Začíname s Perl časť 2.
V prvom dieli sme si povedali niečo o základoch programovania v tomto jazyku. Teraz si ukážeme nejaké tie tipy a triky.
Čítanie zo vstupu
K získaniu vstupných dát sa v programoch Perl používa konštrukcia nazvanú diamantový operátor. Ten vypadá takto:< >Diamantový operátor môžeme jednoducho priradiť k premennej ako ich hodnotu. Pri behu programu potom bude úžívateľ zadávat hodnoty, ktoré zadá z klávesnice.
Diamantový operátor vo vyžšie uvedenej podobe síce plní svoju funkciu, ale umožnuje užívateľovi tiež jednu vec, ktorá sa nám nemusí vždy páčiť. Ide o predávanie hodnôt nie z klávesnice, ale z daľších súborov, ktoré pri spúštaní programu zadáme ako parameter. Pokiaľ sa tomuto chcete vyhnúť a zaújima vás iba vstup z klávesnice, zadajte diamantový operátor v podobe
$a = <STDIN> ;Pri vstupe z klávesnice, alebo presnejšie z štrandardného vstupu (STDIN = Strandard Input) je nutné potvrdiť zadávané hodnoty klávesou ENTER, inak by ich program samozrejme neprijal. Viacmenej stlačenie klávesy ENTER, sa tiež spracuje v programe tak, že je tiež uvedená v premennej, a to ako znak na konci riadku. Aby sme ju odstránili použijeme funkciu chomp() :
$a = <STDIN> ;Nasledujúci príkaz sa často míli s príkazom predošlím ktorí zmaže "novy riadok" na konci retazca, zatiaľ čo tento zmaže posledný akykovľek znak. Syntax je takmer rovnaká:
chomp($a);
$a = "hocijaky text"; chop($a);Ak to spustíme, tak v premennej $a bude už len text: "hocijaky tex".
Úprava textu / retazcov
Ak chcete previesť nejaký retazec v ktorom su veľké písmena, môžme použiť funkciu lc() :$a = lc("NEJAKY TEXT");Ak si premennú potom vypíšeme, bude v nej: "nejaky text".
To isté, ale naopak. Ak chceme previesť retazec s malímy písmenamy na veľke, použijeme funkciu: uc() :
$a = uc("nejaky text");Sme si ukázali ake previesť veľke na malé písmena a naopak. Ale co ak chceme iba prve písmeno? Na to slúži funkcia podobna a zároven aj logická: "lsfirst()" a "ucfirst()". Uvedieme si malý príklad:
$a = ucfirst("nejaky text");Aby sme zistili dĺžku retazca, použijeme funkciu: "length()". Ta nám vráti číslo zodpovedajúce celej dĺžke retazca:
$b = lcfirst("NEJAKY text");
$a = length("nejaky text");Retazce a čísla naraz? Do premennej môžeme napríklad veľmi jednoducho priradiť hodnotu "5 aut" nasledujúcim spôsobom:
$patka = 5;
$text = $patka." aut";
Príspevok pridaný dňa: 02.10.2011 od užívatela: Dodoslav.